In general, data storage systems perform host IO (input/output) operations on behalf host devices. Along these lines, such data storage systems typically store host data within logical units (LUNs).
Some data storage systems include storage tiers which provide different data access speeds. Such a data storage system may then manage data placement among the storage tiers.
For example, suppose that a data storage system includes a tier of flash storage devices, followed by a lower tier of SAS (Serial-Attached Small Computer System Interface) devices, follow by yet a lower tier of near-line SAS devices. One conventional approach to placing host data among the storage tiers involves counting the number of host IO operations that are made to each LUN slice, i.e., 1 Gigabyte (GB) LUN sections, and migrating the LUN slices among the storage tiers based on the counted number of host IO operations for each LUN slice. That is, the data storage system counts the number of host IO operations performed on each LUN slice during a set period of time, such as a day, to determine which LUN slices are the most frequently accessed. The data storage system then moves the LUN slices which are accessed most often to the highest tier while pushing other less frequently accessed LUN slices down to the lower tiers as needed.